import numeral from 'numeral';
import './g2';
import Area from './Area';
import Bar from './Bar';
import DoubleBar from './Bar/DoubleBar';
import FacetBar from './Bar/FacetBar';
import Gauge from './Gauge';
import Line from './Line';
import DoubleLine from './Line/DoubleLine';
import MiniProgress from './MiniProgress';
import DoubleProgress from './MiniProgress/DoubleProgress';
import BarAndLine from './Mix/BarAndLine';
import Pie from './Pie';
import DoublePie from './Pie/DoublePie';
import SinglePie from './Pie/SinglePie';
import DrillDownMap from './ReactMap/DrillDownMap';
import GeoJSONMap from './ReactMap/GeoJSONMap';
import LocationMap from './ReactMap/LocationMap';
import MarkerMap from './ReactMap/MarkerMap';
import WaterWave from './WaterWave';

const yuan = val => `¥ ${numeral(val).format('0,0')}`;
const { viewportScale } = window;

const Charts = {
  yuan,
  viewportScale,
  Area,
  Bar,
  DoubleBar,
  FacetBar,
  Gauge,
  Line,
  DoubleLine,
  MiniProgress,
  DoubleProgress,
  BarAndLine,
  Pie,
  DoublePie,
  SinglePie,
  DrillDownMap,
  GeoJSONMap,
  LocationMap,
  MarkerMap,
  WaterWave,
};

export {
  Charts as default,
  yuan,
  viewportScale,
  Area,
  Bar,
  DoubleBar,
  FacetBar,
  Gauge,
  Line,
  DoubleLine,
  MiniProgress,
  DoubleProgress,
  BarAndLine,
  Pie,
  DoublePie,
  SinglePie,
  DrillDownMap,
  GeoJSONMap,
  LocationMap,
  MarkerMap,
  WaterWave,
};
